/**
 * 版权所有（c）2021. 上海海鼎信息工程股份有限公司，保留所有权利
 */
package com.lovely602.design.structure.composite.transparent;

/**
 * 抽象构件
 *
 * @author lizhixing
 */
public interface Component {
  /**
   * 新增
   *
   * @param c
   *     组件
   */
  void add(Component c);

  /**
   * 移除
   *
   * @param c
   *     组件
   */
  void remove(Component c);

  /**
   * 获取子类
   *
   * @param i
   *     索引
   */
  Component getChild(int i);

  /**
   * 操作
   */
  void operation();
}
